/************************************************************************
* Programmer:  Philippe Gambling
*
* Course:  CSCI 4534
*
* Date:  April 15, 2009
*
* Environment:  GCC 3.2.2 running on diamond.rocks.uhcl.edu
*
* Files Included: memory.h, memory.c
*
* Purpose:  Defines a simulated memory structure.
*
***********************************************************************/ 

#ifndef _MEMORY_H
#define _MEMORY_H

/*
  **** Naming conventions ****
  * _ = "private" variables
  * p = pointer
  * i = integer
  * Capital = Public
  ****************************
*/

#define TRUE 1
#define FALSE 0

typedef struct memory
{
  int _isize;
  char * _pdata;
} * Memory;

/* Public Interfaces for Node */
Memory new_Memory(int);
void free_Memory(Memory);
unsigned int Memory_Size(const Memory);
void Memory_Print(const Memory, char *);
unsigned int Memory_Allocate(const Memory, const int, const char);
unsigned int Memory_Deallocate(const Memory, const char);
#endif
